(转载)UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

您所在的位置:网站首页 msr分区太小 更新不了 (转载)UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

(转载)UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

2023-07-23 21:18| 来源: 网络整理| 查看: 265

看到一篇讲解UEF+GPT的文章,对于知识点的记载很全面。学习一下。本文转载于http://www.cnblogs.com/ForestNet/

内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区、4K对齐、起始扇区、恢复分区、ESP分区、MSR分区,哪些分区是必要的,删除是否会影响系统运行。

建议初级读者先了解什么是BIOS+MBR和UEFI+GPT,再阅读以下内容,因为涉及的内容太多,这些知识点不作为本文的讨论内容,建议百度搜索:“BIOS+MBR”、“UEFI+GPT”、“BIOS+MBR UEFI+GPT 区别”、“UEFI 优势”、“UEFI 好处”

阅读本文前,其它可能还需要了解的知识点:原版系统、系统安装方法、文件系统FAT32/NTFS、diskpart命令、diskgenius、活动分区、主分区、扩展分区、PE、系统引导过程、文件大小换算等。

 

在UEFI引导模式下,Win10X64系统安装程序在为没有任何分区的空白磁盘分区时,当创建第一个分区时会有如下提示:标题:Windows 安装程序,提示内容:若要确保 Windows 的所有功能都能正常使用,Windows 可能要为系统文件创建额外的分区。确定 取消,选择确定后,分别创建了以下几个分区:起始扇区为2048扇区的450MB恢复分区、100MB的ESP分区、16MB的MSR分区、所要创建分区的值减去前面几个分区的大小后的分区。

其它信息:

NTFS版本号        3.1WinVer        Microsoft Windows [版本 10.0.14393]SysVer        Win10X64数据采集Date        2016/11/13分区表类型        GPT/表示无该信息或不相关的信息,*表示无意义的信息或不必要的信息

表格太长,如果看不到全部,可以按Ctrl++放大页面,Ctrl+-缩小页面,Ctrl+0还原到默认大小页面,也可以拖选并复制表格到文本文档或Excel、Word中查看。

由以上数据分析,我们可以大致了解Windows10系统中硬盘分区的默认结构和默认的大小:

1、起始扇区为2048,为了4K对齐,空出1024KB;

1MB=1024KB=2048扇区*512Bytes/扇区=1048576Bytes,也就是空出了1MB的空间,第一个分区的起始扇区为2048是Win10X64系统在分区时为了4K对齐,因为一般默认的起始扇区是63,起始扇区为2048这一点和DiskGenius(V4.8.0.256 X64)的4K对齐的默认值是一样的,用DiskGenius分区时,对齐分区到此扇区数的整数倍是默认勾选的,且默认值为:2048扇区(1048576字节)。

2、关于恢复、ESP、MSR分区:

分区          描述恢复          可选分区,用于存放系统恢复、加密保护工具等。ESP          EFI 系统分区 (ESP),存放系统文件以供引导启动MSR         Windows 系统特有分区,包含与其他系统分区有关的信息,供 Microsoft 应用程序使用。在预装Windows 系统的电脑中(OEM)有可能存在15GB的“恢复”分区,其中存放的是Windows 恢复映像,在系统损毁时可藉此恢复系统,由电脑厂商配置。

100MB或16MB或几百MB大小的MSR系统保留分区一般是用作动态磁盘等或用作存放系统引导文件和Windows RE文件的,如果系统保留分区有十几GB则一般是品牌电脑的原版OEM系统的备份,这个系统是没什么用,非常建议删除;GPT+UEFI模式下ESP必须保留,里面是引导文件(删除后无法引导系统启动),实际的测试中,ESP不可以删除,恢复分区和MSR分区(在DiskGenius中查看MSR分区无任何文件)删除的话,系统也是可以运行;另外在BIOS+MBR下,如果是GHOST的系统,系统保留分区删除不影响系统启动,因为引导文件在系统盘,如果安装的是原版系统的话,则是MBR启动,引导文件在系统保留分区,删除后无法引导系统(可以删除系统保留分区,然后把C盘激活后修复引导,如果没有这个单独的引导分区,这样操作的缺点之一是如果使用bitlocker锁定C盘的话,会无法引导);基于以上分析:这些由系统新建的额外分区占用的空间很小(才几百MB),对于几百GB的硬盘来说占用的空间影响非常小,且都是有一些作用的,虽然有些功能可能你并没有要用到,但是存在就是合理,非常不建议删除,且微软也是不建议我们删除的。

三个额外的分区占用了566MB(在Bios+MBR模式时只有500MB的系统保留分区),而这三个额外分区是在新建第一个分区时提示创建的,这三个额外分区的容量加上第一个硬盘主分区的容量就是你要输入的新建分区的容量,也就是说你要新建一个50GB的系统盘主分区时,你实际上要输入的值是:450+100+16+50*1024=566MB额外分区+51200MB主分区=51766MB,这样在减去三个额外分区后新建的系统盘才是真正的50GB整(但不是显示的整数容量,显示为49.9GB,显示整数请看下文),另外,并不是在任何时候,Windows都会创建以上几个分区,会随着创建的分区的大小不同而改变;

由以上数据可以看到,当你在没有任何分区的空白磁盘上新建分区的大小=9524MB时,才会创建三个额外分区;具体微软的攻城狮是怎么想的,不知道,我认为全部都要提示提示创建额外分区,用户可以选择不同意创建,或选择创建后再删除三个分区的其中任意一个分区,这不是更简单?????

当你的电脑上有两块以上的硬盘(UEFI+GPT模式),且其中一块硬盘有这三个额外分区时,为另一块硬盘分区,系统将提示你创建额外的分区,选择确定后,只创建了16MB的MSR分区,没有另外两个额外分区,这很好理解,只有其中一个或两个额外分区时会创建哪几个额外的分区则未去测试。

如何手动创建以上分区(恢复分区、ESP分区、MSR分区)?

使用最新版DiskGenius分区工具创建,使用快速分区时,创建新ESP分区、创建MSR分区默认是勾选的,但不提供MSR分区大小的修改,且没有创建恢复分区,创建后ESP分区为FAT16文件系统大小为99MB,MSR分区为128MB;直接点新建分区,会提示在建立新分区之前,是否先建立下列ESP、MSR分区?默认勾选了建立MSR分区,但没有勾选建立ESP分区,ESP分区默认大小100MB,且可以修改大小,创建后ESP分区为FAT16文件系统大小为99MB,MSR分区为128MB。

使用diskpart命令创建:

示例:使用 Windows PE 和 DiskPart 配置基于 UEFI/GPT 的硬盘驱动器分区

对于基于映像的部署,使用 Windows 预安装环境 (Windows PE) 启动电脑。然后使用 DiskPart 工具在目标电脑上创建分区结构。有关详细信息,请参阅 适用于 Windows 8 的 WinPE:Windows PE 5.0。

备注:Windows PE 按英文字母顺序重新分配磁盘号,由驱动器号 C 开始,且无需顾及 Windows 安装程序中的配置。该配置可以根据不同驱动器(包括 U 盘)的出现进行更改。 在这些 DiskPart 示例中,分区分配了驱动器号 T、S、W 和 R 以避免驱动器号冲突。重新启动电脑后,Windows PE 会自动将驱动器号 C 分配到 Windows 分区。系统分区、Windows RE 工具分区和恢复映像分区不会接收驱动器号。

 

以下步骤描述了如何对硬盘驱动器进行分区并准备应用映像。可以使用以下部分中的代码来完成这些步骤。

对硬盘驱动器进行分区并准备应用映像

将以下部分中的代码在 U 盘上保存为文本文件 (CreatePartitions.txt)。

使用 Windows PE 启动目标电脑。

使用 DiskPart /s F:\CreatePartitions.txt 命令,其中 F 是 U 盘的驱动器号,用于对驱动器进行分区。

示例 DiskPart 脚本:默认配置

将以下代码保存为 CreatePartitions.txt,然后使用 DiskPart 工具运行脚本以自动化系统、MSR 和 Windows 分区的配置。

select disk 0cleanconvert gptcreate partition primary size=300format quick fs=ntfs label="Windows RE tools"assign letter="T"create partition efi size=100rem == Note: for Advanced Format Generation One drives, change to size=260. format quick fs=fat32 label="System"assign letter="S"create partition msr size=128create partition primaryformat quick fs=ntfs label="Windows"assign letter="W"

 示例 DiskPart 脚本:建议配置

将以下代码保存为 CreatePartitions.txt,然后使用 DiskPart 工具运行脚本以自动化 Windows RE 工具分区、系统、MSR、Windows 和恢复映像分区的配置。

rem == CreatePartitions-UEFI.txt ==rem == These commands are used with DiskPart torem    create five partitionsrem    for a UEFI/GPT-based PC.rem    Adjust the partition sizes to fill the driverem    as necessary. ==select disk 0cleanconvert gptrem == 1. Windows RE tools partition ===============create partition primary size=300format quick fs=ntfs label="Windows RE tools"assign letter="T"set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"gpt attributes=0x8000000000000001rem == 2. System partition =========================create partition efi size=100rem    ** NOTE: For Advanced Format 4Kn drives,rem               change this value to size = 260 **format quick fs=fat32 label="System"assign letter="S"rem == 3. Microsoft Reserved (MSR) partition =======create partition msr size=128rem == 4. Windows partition ========================rem ==    a. Create the Windows partition ==========create partition primaryrem ==    b. Create space for the recovery image ===shrink minimum=15000rem       ** NOTE: Update this size to match the sizerem                of the recovery image           **rem ==    c. Prepare the Windows partition =========format quick fs=ntfs label="Windows"assign letter="W"rem === 5. Recovery image partition ================create partition primaryformat quick fs=ntfs label="Recovery image"assign letter="R"set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"gpt attributes=0x8000000000000001list volumeexit

 提供对 Windows RE 工具和恢复映像分区的额外保护。

如果使用推荐的 DiskPart 脚本,则最终用户在文件资源管理器中不能查看 Windows RE 工具分区和恢复映像分区。但是,他们可以使用磁盘管理工具查看和删除恢复映像分区。

如果要使用磁盘管理工具防止最终用户删除分区,可以在创建分区时将以下 DiskPart 命令添加到脚本。

gpt attributes=0x8000000000000001

 该 DiskPart 命令合并了 GPT_ATTRIBUTE_PLATFORM_REQUIRED (0x0000000000000001) 和 GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER (0x8000000000000000) 属性。有关详细信息,请参阅 DiskPart:GPT。后续步骤

创建分区后,可以在新创建的分区上使用部署脚本以应用 Windows 映像。有关详细信息,请参阅示例:使用部署脚本应用 Windows、系统和恢复分区。另请参阅任务示例:使用 Windows 安装程序创建基于 UEFI/GPT 的硬盘驱动器分区示例:使用 Windows PE 和 DiskPart 配置基于 BIOS/MBR 的硬盘分区示例:使用部署脚本应用 Windows、系统和恢复分区概念配置基于 UEFI/GPT 的硬盘驱动器分区

硬盘整数分区的研究,硬盘分区实际占用的空间大小研究:

我们可以知道在Win10X64系统,UEFI+GPT模式下,硬盘各分区的实际占用空间大小和默认分区排序顺序如下(C盘以50GB为例):

为什么分区完成后在Windows系统中显示的总容量大小要比理论的大小要小呢?关于这个分区,硬盘厂商设计的是1GB=1000Mb,而操作系统却认为1Gb=1024Mb,而这个整数分区的公式既不是按照硬盘厂商的设计也不是按照操作系统的设计,而是另有误差。原因就是硬盘在分区和格式化之后还会在硬盘上占用一定的空间用来存储磁盘结构和数据位置等信息。

对于NTFS格式:硬盘一般有255磁头,63扇区,故每柱面大小为:512byte x 255 x 63=8225280bytes =7.84423828125 MB如果要分10 GB,那么要10x1024 MB=10240 MB需要柱面数为10240÷7.84423828125=1305.416744475568004979769685652取整数既为1306个柱面应分MB数为1306x7.84423828125=10244.5751953125 MB不管小数点后面几位都进1,也就是10245 MB,系统也就认为是10.00 GB了。

每一个分区都要这么复杂的计算,那头都会晕,而且浪费时间,当然也能可以在网上找到硬盘整数分区计算器的绿色小程序,但是为了一个这么简单的功能,去下载软件又麻烦,还有感染木马病毒的危险,也不用自己事先一个一个去算好来以后备用,也不要网上找不一定正确的表格,我们可以用Excel表格输入公式进行自动的计算,利用EXCEL自带的函数表格对整数G进行计算:在A1单元格中输入我们需要分出的整数G分区的数值,在B1单元格中输入下列公式:=ROUNDUP(ROUNDUP(A1*1024/7.84423828125,0)*7.84423828125,0)按回车后,即可得到整数G分区对应的MB数值。上述公式用到了一个函数:ROUNDUP(a,b),ROUNDUP就是无条件进位,a代表需要进行进位的那个数,b代表返回结果所保留的小数位数,我们需要无条件进位取整的话,就是不保留小数,所以b赋值为0。

可以自己制作一个表格,输入自己最常用的整数G,就能自动生成对应的MB数(对于FAT32文件系统的整数分区将不详细讨论,FAT32文件系统只在U盘中常见,且现在U盘都是exFAT为主了,在操作系统中很少以FAT32作为分区的文件系统)。

下面是从网络上寻找的常见分区大小对照表:

但是使用DiskGenius创建的分区大小要比理论的大小只多出1MB(nGB=n*1024+1MB),而不是上面表格所对应的大小,如果按照理论的大小MB数来分区的话,在Windows系统下分区的容量和可用空间都变成了49.9GB,因为在Windows下显示的容量要比分区时分配的容量小4096Bytes,也就是少了4KB,这4KB估计就是用来存储磁盘结构和数据位置等信息的空间的大小,并不是实际可用的空间,所以DiskGenius分区时会加1MB让分区的总容量显示为整数,所以你要让硬盘整数分区最简单便捷的方法就是按照DiskGenius分区软件的方法,在原NTFS分区的理论大小上加1MB就可以了;第二种硬盘整数分区的方法就是对照上面的表格来分配分区大小。

而在BIOS+MBR模式时,Windows安装系统时新建的分区只有500MB的系统保留分区(应该类似于UEFI+GPT模式下的ESP和MSR分区),NTFS格式、卷标为系统保留,在DiskGenius中查看该分区下的文件应该是用于存放系统引导相关文件和Windows RE环境用的,起始扇区也是2048扇区。

分区的簇大小:NTFS:4096,ESP引导分区为FAT32文件系统,簇大小为1024;这个簇大小应该是因分区的大小和文件系统的不同而不同的,这个是和文件系统相关的。

Win10X64系统的安装分区建议大小:

win10分区建议大小:所选分区上的可用空间量小于建议的 25361 MB。我们建议此分区至少为 25361 MB,否则请选择其它分区。当>=8957MB时,点击下一步还是可以安装的,只是建议大小为25361MB;当分区=500GB的硬盘建议以60GB作为系统盘,安装软件多的可以以80GB、90GB、100GB、110GB、120GB作为系统盘大小;

D盘分区建议大小,D盘作为常用数据和一些游戏及部分软件的安装盘,也不要太大,120GB的固态硬盘分两个区D盘只剩大约59GB了,更大的硬盘D盘建议分100GB或120GB的空间,再更大的则分160GB、200GB的空间;

硬盘分区数越少越好,有的用户会喜欢再创建几个硬盘分区,但是硬盘多个分区不是越多越好,越多的话会出现很多问题,比如分区太多可能出现分区空间不足、数据容易丢失等问题哦,那么具体有哪些不好的原因呢?我就和大家浅浅的分析下设置分区越多越不好的原因。如果习惯用WIN7的库,可以把WIN7的每个库当成一个分区,这样也就是不分区的分区了。在Win7中,文件管理方式有了很大的不同,除了在不同的文件夹和子文件夹中组织文件外,最大的改进就是可以使用库组织和访问文件,而不用管它们存储的位置如何。所以根据这个新特性,我们完全不需要按照winxp的模式将不同类型的文件放在不同的分区来进行管理,只需要将不同类型的文件放入不同的库中即可。比如分区太多会出现分区空间不足的情况,而且移动文件就会很麻烦,可是不移动文件的话利用分区软件进行调整,又很容易出现丢失数据甚至分区丢失的情况,左右为难,主要问题是过多的话还会造成硬盘空间的浪费。备份无需多分区:有些朋友会考虑到系统还原的问题,就会建议多分几个区,其实win7有强大的系统修复能力,修复手段包括启动修复、系统还原、系统映像恢复等各种方式,即使系统崩溃采用覆盖安装的方式,系统也会自动在原系统硬盘分区内生成一个“Windows.old”的文件夹,原系统内的“Windows”、“Program Files”、“Users”这三个目录中的文件都会转移到这个文件夹中,所以你完全不用担心数据丢失的问题。分区要合理,分区太多数据容易丢失,特别扩展分区和逻辑分区这种模式,一个分区如果丢失,有可能后面全部分区跟着一起丢失这种情况发生。对于机械硬盘,分区越少,硬盘的寻道时间越短,速度就越快;

分区越多,一是管理麻烦,二是对容量有损耗。所以应该根据硬盘大小和自己的需要,而分区越多,系统在启动时检测分区时所花的时间就越长;

分区比较重要的逻辑是:将系统和资料分离独立,在系统崩溃后便于保留资料。分区太多,是资料和资料分离,没有必要。组织文件还请用文件夹。

Windows操作系统虽然比以前健壮了太多,但有时依然不得不重装,或者换系统。Win8/10虽然有系统重置功能,不过似乎不太成熟,还需完善,若能完善其实一个分区也不错;文件系统已经要比以前好很多。以前效率不高、不是太健壮的FAT时代,有必要多个分区。但现在已经是NTFS时代,可靠健壮效率高,还是非常不错的。所以,多分区是针对FAT的时代旧习惯,这种习惯在当下没有延续的必要。要知道,NTFS理论最大分区可以达到16EiB,微软为此做了足够的准备。注意,文件系统和操作系统是两个东西,可自行搜索了解,在此不多述;分区的减少,可以避免文件的在不同分区的长时间迁移,省时方便;若担心分区错误,右击分区图标——属性——工具——查错——开始检查,可排除文件系统错误;坏道的话,在刚才的基础之上多个选项,或者其他工具。总之,分区多少与分区/硬盘修复没有什么联系;文件夹才是对文件分类的主要方式,尤其在不同分区迁移大文件将是一个非常无语的问题;

资料建议分两部分,D盘用作用户数据盘保存:常用的临时文件、系统用户数据(我的桌面、文档、收藏夹、我的音乐、我的视频、我的图片等)、有重要资料的软件目录(QQ聊天记录文件夹、微信、网盘同步等)、绿色软件安装目录、占用空间大的软件安装目录(游戏、视频编辑、制图类等)、个人零碎小文件及文档;E盘用作其它资料盘保存:音乐、视频、影音、图片、下载目录、教程、大文件、游戏及软件安装包、其它占用空间较大的一类文件、其它不常用资料、其它文件等。

120GB、128GB的硬盘肯定是分两个分区,>=320GB的硬盘分3个分区,不管硬盘多大,都建议分3个分区(系统盘+用户数据及软件类+其它文件资料),分区越少越好,那我按照很多电脑出厂时的一个分区是不是会更好呢?上面说了系统会出问题,系统、资料要隔离,资料又分用户数据和其它资料,3个分区是最合理的,分区越多,空间利用率越小,又浪费磁盘空间,硬盘的空间又不会因分区多而变小,怎么会利用率低呢?你为每个分区分配不同的空间,时间久了,可能某个分区不够用或空间多了,所有资料都在一个分区就共享该分区总空间,空间利用率肯定会相对更高;举例来说,120GB的硬盘分2个区(50GB+59GB),你D盘可以放59GB的东西,你分3个区(50GB+30GB+29GB),那么同一类型的文件(如电影、电视刷、教程、工作文件),最多只能用到30GB,多了你就要放到另一个分区,这样就不方便管理了,而你分更少的分区的话,不管放什么文件是不是都可以放很多,放其它文件只要新建一个文件夹就可以了,你把根目录的文件夹重命名为D、E、F、G、H盘,是不是就和你有D、E、F、G、H分区是一样的意思,你把分区看成是文件夹,把不同文件夹看成是不同的分区,结构上都是一样的,分区归类比文件夹更不方便于管理,所以大家不要以分区来归类自己不同类型的文件,而是要去习惯以文件夹来归类,也很方便的因自己不同类型文件多少的变化来随时归类管理自己的不同文件夹,对于常用的文件夹可以新建快捷方式到桌面,也可以用批处理subst命令来映射常用文件夹为虚拟磁盘分区。

对于移动硬盘的分区建议:GPT分区表(XP会不支持GPT,但XP系统较少见,且可以用2003SP2X86系统里的disk.sys替换来支持;对于无UEFI启动的电脑无法直接启动GPT硬盘里的系统,可以把引导文件写入到MBR分区表的U盘来引导GPT硬盘),要4K对齐,起始扇区为2048扇区,有恢复分区、ESP、MSR分区,1、随后新建1GB的分区用于安装ISO格式的PE系统,2、30GB~50GB用于安装系统(也可以用于存文件,有需要可以用来安装系统用作实验及测试,因为只是用来测试什么的,有30GB足够安装系统),3、50GB~120GB用于用户数据及软件安装(不装系统时也可以用来存文件),4、剩余空间为最大的分区,用来存文件什么的。

常见用途硬盘建议的分区结构和大小:

注:

本文为了突出主旨,只写与主要讨论的内容有关,但一些相关的内容有提及并作简要描写,不作详细的解说,不明白的请自行网络搜索相关资料;

建议只是本人现在认同的方式,基于本人的认知和习惯而形成的解决方式,分享自己的观点,如有错误,欢迎指正;

关于版权与转载:

本文由ForestNet原创,首发于http://www.cnblogs.com/ForestNet/。

关于文件大小的换算,可以参考:在线文件大小(bit,bytes,KB,MB,GB,TB)转换换算,http://www.bejson.com/convert/filesize/

关于整数分区计算可以参数:整数分区在线计算工具,支持 NTFS 和 FAT32,http://www.iplaysoft.com/tools/partition-calculator/



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3